Multidimensional Number Theory (MDNT)

 

Copyright by Gabriel Paul.

You can use this theory for any purpose (including commercial), but only if you specify that the author (of the theory) is Gabriel Paul.

 

Definitions

Multidimensional numbers = Multinumbers = MDN.

D-dimensional space = A space with "D" dimensions.

Dimension of z = Dim(z) is the number of axis used to make calculations. Dim(z) >= 2.

All axis of a multidimensional space, are perpendicular on each other, so they can not intersect.

Consider that:

d € N{ >= 2 }.

r € R.

x, y, z € MDN{D} (D-dimensional space).

i, j are the index of an axis, where the limits are 1 and D.

Mi. is the axis i of the number.

alg[i] € R. This is the value of the algebraic factor on the i axis. Instead alg it may be use a.

ang[i] € R. This is the value of the angle on the i axis. Instead ang it may be use u.

 

Algebraic Form

An MDN has a unique algebraic form, meaning that there is only one set of algebraic factors (= coordinates) that define the MDN.

z = (alg[1], alg[2], ..., alg[d]) = M1.alg[1] + M2.alg[2] + ... + Md.alg[d].

 

Polar Form

The polar form is the set of polar factors (module and angles) that are associated to an algebraic form.

An MDN has multiple polar forms, meaning that there are multiple sets of polar factors that define the MDN.

The reduced polar form is the only set of reduced polar factors that define an algebraic form.

The relational polar form is formed by all sets of relational polar factors (in number of 2 ^ (d - 1)) that define an algebraic form.

The solution polar form is formed by all sets of solution polar factors that define an algebraic form.

 

The Module

There is only one set of partial reduced modules that define an MDN.

All reduced modules are positive.

The partial reduced module of z on the i axis: MopRed[i] = abs(sqrt(sum{j = 1..i}(sqr(alg[j])))).

The reduced module of z is ModRed = Mod = MopRed[d].

The relational module of z is ModRel = +-ModRed.

 

The Angles

There is only one set of reduced angles that define and MDN:

If alg[1] >= 0, AngRed[1] = asin(alg[2] / MopRed[2]) or atan(alg[2] / MopRed[1]).

If alg[1] < 0, AngRed[1] = asin(alg[2] / MopRed[2]) + pi or atan(alg[2] / MopRed[1]) + pi.

AngRed[i, i = 2..d - 1] = asin(alg[i + 1] / MopRed[i + 1]) or atan(alg[i + 1] / MopRed[i]).

If MopRed[i] = 0, the angle is indeterminate (it can have any value).

Here asin() and atan() have their domain: [-pi / 2, pi / 2].

The reduced angles have their domain:

AngRed[1] € [0, 2 * pi).

AngRed[i, i = 2..d - 1] € [-pi / 2, pi / 2].

 

The Relational Angles

Relational angles depend on each other to define an MDN.

There are 2 ^ (d - 2) sets of relational angles for an MDN. The first angle is determined from the rest.

Each relational angle must be:

AngRel[1] € [0, 2 * pi).

AngRel[i, i = 2..d - 1] € [-pi / 2, 3 * pi / 2].

 

The Solution Angles

There are an infinite number of sets of solution angles for an MDN: AngSol[i] = AngRel[i] + 2 * pi * k[i], where k[i] € Z.

 

Generating the relational form

To generate the relational form of an MDN you have to choose between 2 possible cases (for each factor: the module, all angles with index [2..d - 1]). The first angle is calculated from the module and all other angles because it influences only the first 2 trigonometric factors, so this is the easiest way to do it.

If z.ModRel =

Choose +z.ModRed then sign = 1.

Choose -z.ModRed then sign = -1.

If sign = 1 then z.AngRel[i, i = d - 1..2] =

Choose z.AngRed[i] then sign = 1.

Choose pi - z.AngRed[i] then sign = -1.

If sign = -1 then z.AngRel[i, i = d - 2..2] =

Choose pi + z.AngRed[i] then sign = 1.

Choose -z.AngRed[i] then sign = -1.

If sign = 1 then z.AngRel[1] = z.AngRed[1].

If sign = -1:

If z.AngRed[1] < pi then z.AngRel[1] = z.AngRed[1] + pi.

If z.AngRed[1] >= pi then z.AngRel[1] = z.AngRed[1] – pi.

 

The Trigonometric Factors

z.trig[1] = multiply{i = 1..d – 1}(cos(z.AngRed[i])).

z.trig[j, j = 2..d - 1] = sin(z.AngRed[j - 1]) * multiply{i = j..d – 1}(cos(z.AngRed[i])).

z.trig[d] = sin(z.AngRed[d - 1]).

 

Generating the algebraic form from the polar form

alg[i] = ModRed * trig[i].

 

Mathematical functions

A multidimensional space closes within it self, meaning that the results have the same number of dimensions.

All properties of mathematical functions are the same as those for real numbers, except for distribution of multiplication to adding (z * (x + y)), except for 2 general cases:

M1.r * (x + y) = M1.r * x + M1.r * y.

M2.r * (x + y) = M2.r * x + M2.r * y.

 

Degree of z = Grd(z) is the number of axis up to the null algebraic factors (the factors on the right side are 0).

If a[i, i = 1..d] = 0 then Grd(z) = 0.

If (a[grd] <>0, grd € {1, d}) and (a[i], i = grd + 1..d) = 0 then Grd(z) = grd

Order of z = Ord(z) is the number of axis down to the null algebraic factors (the factors on the left side are 0).

If (a[ord] <> 0, ord € {1, d}) and (a[i], i = 1..ord - 1) = 0 then Ord(z) = ord – 1.

If a[i, i = 1..d] = 0 then Ord(z) = d.

Equality: x, y € MDN{D} are equal if each algebraic factor is equal: x.a[i] = y.a[i].

 

Sum: (x + y).alg[i, i = 1..d] = x.alg[i] + y.alg[i].

Subtraction: (x - y).alg[i, i = 1..d] = x.alg[i] - y.alg[i].

Multiplication:

(x * y).mod = x.mod * y.mod.(x * y).

ang[i, i = 1..d - 1] = x.AngRel[i] + y.AngRel[i].

Division:

(x / y).mod = x.mod / y.mod.

(x / y).ang[i, i = 1..d - 1] = x.AngRel[i] - y.AngRel[i].

Exponential:

(E ^ x).mod = e ^ x.alg[1]. E = M1.e.

(E ^ x).ang[i, i = 1..d - 1] = x.alg[i + 1].

Logarithm:

(ln(x)).alg[1] = ln(x.mod).

(ln(x)).alg[i, i = 2..d] = x.AngSol[i - 1].

Logarithm with base y:

log{y}(x) = ln(x) / ln(y).

log{y}(x) = -M1 / log{x}(y).

Power: x ^ y = E ^ (y * ln(x)).

Exponential form: z = M1.cos(x) + M2.sin(x) = E ^ M2.x.

=> E ^ M2.(-x) = 1 / E ^ M2.x.

=> Sin: sin(x) = (z - inv(z)) / M2.2. z = E ^ M2.x.

=> Cos: cos(x) = (z + inv(z)) / M1.2. z = E ^ M2.x.

Image: x.alg[i] = x.alg[i] / x.mod = x.trig[i].

Mirror: x.alg[i] = -x.alg[i].

Inverse: inv(x) = 1 / x = 1 / x.mod * (x.trig[1] - x.trig[2] - ... - x.trig[d]).

 

REMEMBER! In more than 2 dimensions, the inverse function (of a function) does not necessarily lead to the initial number. Example: y = sqr(x) and z = sqrt(y): z is not the same as x. Still, if before sqrt(y) you set a particular solution polar form (you have to find it manually) of y, the initial x would result in z.